package org.hcyspartnoc.luoxin.pojo.dto.asset;

import jakarta.validation.constraints.Max;
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.hibernate.validator.constraints.Length;

import java.io.Serial;
import java.io.Serializable;

@Data
@NoArgsConstructor
public class AssetVCounselorModifyDto implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    @NotNull(message = "id不能为空")
    private Integer id;
    @NotNull(message = "名称不能为空")
    @Length(min = 1, max = 10, message = "名称长度1-10")
    private String name;
    @NotBlank(message = "别名不能为空")
    @Length(min = 1,max = 20,message = "别名长度1-20")
    private String alias;
    @NotNull(message = "提示词不能为空")
    @Length(min = 100, max = 3000, message = "提示词长度100-3000")
    private String prompt;
    @NotNull(message = "疗法不能为空")
    @Length(min = 1, max = 255, message = "疗法长度1-255")
    private String therapy;
    @NotNull(message = "风格不能为空")
    @Length(min = 5, max = 255, message = "风格长度5-255")
    private String styleStringList;
    @NotNull(message = "头像不能为空")
    @Length(min = 30, max = 50, message = "请输入正确的头像code码")
    private String avatar;
    @NotNull(message = "描述不能为空")
    @Length(min = 10, max = 1000, message = "描述长度10-1000")
    private String description;
    @NotNull(message = "开场白不能为空")
    @Length(min = 5, max = 1000, message = "开场白长度5-1000")
    private String openingsStringList;
    @NotNull(message = "价格不能为空")
    @Min(value = 0, message = "价格最低0元每小时")
    @Max(value = 99999999, message = "价格最高99999999")
    private Double hourPrice;
}
